# 课堂练习
# 定义一个商品列表，里面写入商品的值和价格
goods = [
    ["芝士莓莓", 23],
    ["芝士葡萄", 23],
    ["西瓜椰椰", 22],
    ["鸭屎香柠檬茶", 16],
    ["布蕾波霸奶茶", 18]
    ]
shopping_list = []  # 空列表，存放购买的商品


balance = input("请输入你的支付宝余额:")
if balance.isdigit():  # isdigit() 方法检测字符串是否只由数字组成,是则返回True,否则返回False
    balance = int(balance)  # 当输入的值是数字的话，用int将balance的数据类型转为数值
    while True:
        for good_list in enumerate(goods):  # index作为下标索引，enumerate可以同时取得列表的索引index和对应的值
            print(good_list)

# enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列，同时列出数据和数据下标，一般用在 for 循环当中。
        user_choice = input("请输入你要购买的商品[0,1,2,3.4][输入q退出]:")
        if user_choice.isdigit():
            user_choice = int(user_choice)  # 同样是将用户的选择用int将数据类型转换为数值
            if user_choice < len(goods) and user_choice >= 0:
                product_choice = goods[user_choice]
                if product_choice[1] < balance:  # 买得起
                    shopping_list.append(product_choice)  # 买得起，就放入购物车
                    balance -= product_choice[1]                        # ↓是将字体标红的方法
                    print("Add %s into your shopping car,your balance is \033[31;1m%s\033[0m"%(product_choice,balance))
                else:
                    print("\033[41;1m你的余额只剩%s啦，还想买啥啊！\033[0m"%balance)
                    print("按q退出，去存钱吧！")
                    for shopping in enumerate(shopping_list):
                        print(shopping)
                    print("---------shopping list-----------")
                    print("你的余额为：\033[31;1m %s \033[0m" % balance)
            else:
                print("没有这个商品哦~")
        elif user_choice == "q":
            print("---------shopping list-----------")
            for shopping in enumerate(shopping_list):
                print(shopping)
            a = len(shopping_list)
            print('数量:%s件商品' % a)
            print("---------shopping list-----------")
            print("你的余额为：\033[31;1m%s\033[0m"% balance)
            exit()
        else:
            print("请输入正确的商品编号！或者输入“q”退出")
else:
    print("请输入纯数字的支付宝余额！")
